home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1996 #6 / Amiga Plus CD - 1996 - No. 06.iso / pd / grafik / grimmv15 / grimm.doc < prev    next >
Text File  |  1996-07-25  |  25KB  |  1,146 lines

  1. Grimm V1.5e
  2. First version uploaded to Aminet
  3. See log file for changes
  4. See end of file for latest info
  5.  
  6.  
  7.  
  8. Legal issue
  9. ===========
  10.  
  11. This software is © Copyright 1992-96 by the author.
  12. All Rights Reserved except as specified below.
  13.  
  14.     Adresses:
  15.  
  16.     e-mail        101732.3355@compuserve.com
  17.  
  18.     snail-mail
  19.             Denis SPACH
  20.             50, rue de Ribeauvillé
  21.             67100 STRASBOURG
  22.             FRANCE
  23.  
  24.  
  25.  
  26. This software is not Public Domain, but FREEWARE. It may be used for any
  27. purpose, private or commercial, assuming that:
  28.  
  29. The author make NO WARRANTY or representation, either express or implied,
  30. with respect to this software, its quality, accuracy, merchantability, or
  31. fitness for a particular purpose.  This software is provided "AS IS", and
  32. you, its user, assume the entire risk as to its quality and accuracy.
  33.  
  34. Permission for use of this software is granted only if the user accepts
  35. full responsibility for any undesirable consequences; the author accept
  36. NO LIABILITY for damages of any kind.
  37.  
  38. Copying and redistributing this software is allowed according to the
  39. following conditions:
  40.  
  41.     - all files must be included with the redistribution
  42.     - redistribution cost may not exceed floppy disk cost + postage
  43.     - downloading cost from a BBS may not exceed a floppy disk cost
  44.     - charging for documentation translation is forbiden
  45.     - inclusion on a cover magazine disk is forbiden
  46.  
  47.                 MORE CLEARLY
  48.                 ------------
  49.  
  50.         Nobody else than ME is allowed to make money of it,
  51.             either directly or indirectly.
  52.  
  53. For any other conditions, you MUST contact the author.
  54.  
  55. Of course, Fred FISH and/or Aminet makers are specially welcome to
  56. redistribute this software, via net or CD's.
  57.  
  58.  
  59.  
  60. I am required to state that
  61.  
  62.     "This software is based in part on the work of the
  63.     Independent JPEG Group."
  64.  
  65.     "The Graphics Interchange Format(c) is the Copyright property of
  66.     CompuServe Incorporated.  GIF(sm) is a Service Mark property of
  67.     CompuServe Incorporated."
  68.  
  69. Well, I hope this was enough for these legalicies !
  70.  
  71.  
  72.  
  73. What is Grimm
  74. =============
  75.  
  76. Grimm is an Image Processor. It has been build up from many utilities I
  77. wrote since the end of 1992, when first AGA machines appear. Some of the
  78. features shown in GUI are not all fonctionnal, since merging all this
  79. software into one package is quite time consuming. Grimm includes also
  80. some neat animation features.
  81.  
  82. ==> Grimm is Freeware and will remain Freeware !!
  83.  
  84.     IMHO there are too much tools on this subject which are Shareware and
  85.     there is a real need for a free tool like this one. I won't claim
  86.     Grimm is better then A, B or C, try it and make your own judgement !
  87.  
  88. Grimm may be started either from WB or CLI. Stack usage may be
  89. something less then 16k.
  90.  
  91. WARNING:
  92.  
  93.     - Needs currently WB3.0 and up.
  94.     - New since 1.3, should now work on non AGA chipset (untested)
  95.  
  96. Also included with Grimm, is `dsv' a viewer supporting the same image
  97. formats than Grimm does. It has the possibility to display True Color
  98. images without the need of any other graphic card. Try it !
  99.  
  100. The documentation is very short, but this is FREEWARE !
  101.  
  102. For informations on history, bugs, future features, see other text files.
  103.  
  104. Enjoy !
  105.  
  106.  
  107.  
  108. List of files
  109. =============
  110.  
  111.     - Grimm     The program
  112.     - Grimm.info      and icon
  113.     - Grimm.doc    this file
  114.     - Grimm.log    history file
  115.     - dsv        image viewer
  116.     - dsv.info      and icon
  117.     - dsv.doc    image viewer tiny documentation
  118.     - A-iff     player for IFF anim files
  119.     - A-iff.info      and icon
  120.     - A-flic    player for FLI/FLC anim files
  121.     - A-flic.info      and icon
  122.  
  123.  
  124.  
  125. Help wanted !
  126. =============
  127.  
  128.     - Ideas to improve this tool (some are already at end of file)
  129.  
  130.     - Would anyone design a better icon for Grimm (I'm not an artist !)
  131.  
  132.     - Would anyone write a real much better doc (amiguide ?)
  133.  
  134.     - Specifications on other image/animation format you like
  135.  
  136.     - Bug reports (really ??)
  137.  
  138.     - Flames >NIL:
  139.  
  140.  
  141.  
  142. Quick documentation
  143. ===================
  144.  
  145. 1 - Main window buttons
  146. -----------------------
  147.  
  148.     Load
  149.  
  150.     load an image, the following formats may be read
  151.  
  152.     - BMP    WIN-OS/2-RLE with 4/8 and 24 bits per pixel
  153.     - CIF    raw CIF image in YUV 4:1:1
  154.     - CCIR    raw CCIR601 image in YUV 4:2:2
  155.     - DSF    (no usage since it is my own format)
  156.     - FBM    from the Fuzzy BitMap package
  157.     - GIF    either 87 or 89 non interlaced first image
  158.     - IFF    1-8,24 bits and HAM standart IFF
  159.         PBM, SHAM or sliced, RGB8 and RGBN, and DEEP RGBM images
  160.     - JPG    JFIF color files
  161.     - PCD    PhotoCD Base/16, Base/4 & Base images
  162.     - PCX    1/4/8/24 bits files
  163.     - P?M    binary or ascii from the PBMPLUS library
  164.     - QRT    from DKB or POV ray tracer
  165.     - SUN    8/24/32 bits raster files
  166.     - TGA    8/15/16/24/32 non interlaced top rastered Targa files
  167.     - TIF    8/24 uncompressed colormapped or true color 8 bits/gun
  168.         (CMYK, LZW files not yet implemented)
  169.  
  170.     Brush
  171.  
  172.     Load a brush (not implemented)
  173.  
  174.     A
  175.  
  176.     Animation setup (see Animation window)
  177.  
  178.     P
  179.  
  180.     Preferences setup (not implemented)
  181.  
  182.     For now, the following environ variables may be used :
  183.  
  184.         * `JPEGQuality' may be set to a number between 25
  185.           to 95. If not set this will default to 75. Used
  186.           when saving in JPG format.
  187.  
  188.         * `PhotoCDSize' may be set to a number 0 thru 2.
  189.           Used while reading PhotoCD images. 0 means read
  190.           Base resolution, 1 Base/16 resolution, and 2
  191.           Base/4 resolution. If not set this will default
  192.           to 0 (Base resolution).
  193.  
  194.         * `GrimmUndo' may be set to anything.
  195.           This will enable the one level undo function.
  196.  
  197.         NEW in V1.3
  198.  
  199.         * `Grimm4Planes' may be set to 0 or 1.
  200.           If set to 1, this will force OCS/ECS compatibility
  201.           on AGA machines (test purpose). Note that AGA chipset
  202.           is detected otherwise.
  203.  
  204.         * `GrimmNoDMA' may be set to 0 or 1.
  205.           If set to 1, drawing is done using a special
  206.           method called Dynamic Depth (Copyright by me ?!)
  207.           to really speed up window drawings.
  208.  
  209.     ?
  210.  
  211.     Help (not implemented)
  212.  
  213.     U
  214.  
  215.     one level undo function
  216.  
  217.     IFF (cycle button)
  218.     BMP
  219.     JPG
  220.     TGA
  221.     TIF
  222.  
  223.     select Save format
  224.  
  225.     Save
  226.  
  227.     save an image in the format specified above
  228.  
  229.     Balance
  230.  
  231.     change colors intensities (see Balance window)
  232.  
  233.     Color
  234.  
  235.     change image type RGB/CMAP/GREY (see Color window)
  236.  
  237.     Convert
  238.  
  239.     convert image flip/crop/border/aspect/... (see Convert window)
  240.  
  241.     Effect
  242.  
  243.     select an effect (see Effect window)
  244.  
  245.     Filter
  246.  
  247.     select a filter (see Filter window)
  248.  
  249.     Convolve
  250.  
  251.     convolution lab (see Convolve window)
  252.  
  253.     Palette
  254.  
  255.     palette editor (see Palette window)
  256.  
  257.     Resample
  258.  
  259.     resize image (see Resample window)
  260.  
  261.     Distort
  262.  
  263.     distort image (see Distort window)
  264.  
  265.     ---
  266.  
  267.     nop
  268.  
  269.     Batch
  270.  
  271.     EXTRA BONUS on V1.1:
  272.  
  273.     Quick&Dirty batch converter
  274.  
  275.     When this gadget is on, you may select Load gadget to convert
  276.     a set of image files.
  277.  
  278.     Usage:
  279.  
  280.         a) activating Batch with Left Mouse Button
  281.  
  282.         on next Load operation, user is asked to select a set
  283.         of files for input, then to select an output drawer.
  284.         Output format will be the one selected for Save, and
  285.         each output file will have have the same name as the
  286.         input one with the format suffix added. So if the Save
  287.         format is IFF and the input files are img.001, img.002
  288.         ... output names will be img.001.iff, img.002.iff, ...
  289.         Multi selection on the input file requester is achieved
  290.         by holding the SHIFT key while hitting the file name
  291.         the Left Mouse Button (aka AmigaDOS RequestFile command).
  292.  
  293.         b) activating Batch with CTRL + Left Mouse Button
  294.  
  295.         same as above, except input files are first run through
  296.         the Color operator to reduce colors. To convert 24 bits
  297.         RGB files to HAM8, for instance, hit Color operator and
  298.         select HAM8 and Quantize, then select Cancel, then back
  299.         to the main window, select Load operator, and select
  300.         files and output directory. Of course, in this case,
  301.         output format must be IFF. For others output formats,
  302.         just select the amount of colors you wanna have (8~256).
  303.  
  304.         c) activating Batch with ALT + Left Mouse Button
  305.  
  306.         same as a) but the output file format is an animation
  307.         file. Use this to convert a bunch of pictures into an
  308.         animation.
  309.  
  310.         d) activating Batch with ALT + CTRL + Left Mouse Button
  311.  
  312.         same as b) + c)
  313.  
  314.     Display
  315.  
  316.     Redisplay the image.
  317.     If the display type is "Screen", the image is displayed in a
  318.     private screen (use right mouse button to exit screen display).
  319.  
  320.     When activated holding CTRL key, you may change the screen mode
  321.     used by Grimm (note that Grimm needs at least 640x200).
  322.  
  323.     When activated holding any SHIFT key, you may change the screen
  324.     mode used when displaying images on a private screen.
  325.  
  326.     slider
  327.  
  328.     Zoom slider. You must select the zoom center on the display window
  329.  
  330.     Window (cycle button)
  331.     Screen
  332.  
  333.     change display type : window or screen
  334.  
  335.     HAM (cycle button)
  336.     GREY
  337.     Ord6
  338.     Ord2
  339.     Multi
  340.  
  341.     change display mode : FastHAM8 or Grey or OrderedDither(6,2)
  342.                   or Multicolor
  343.  
  344.     Quit
  345.  
  346.     Exit
  347.  
  348.  
  349.     NOTE:
  350.  
  351.     If display window is active, dragging the main window down the screen
  352.     will rescale the display window on next display update. The display
  353.     height area is computed from the bottom of the main window til the
  354.     bottom part of the screen.
  355.  
  356.  
  357.  
  358. 2 - Animation window buttons
  359. ----------------------------
  360.  
  361.     This window lets you setup animation parameters, such as drawer,
  362.     output file base name, the amount of frames.
  363.     Additional parameters are :
  364.  
  365.     Loop
  366.  
  367.     add loop at end of animation (only IFF implemented)
  368.  
  369.     Append
  370.  
  371.     append frame to animation (not implemented)
  372.  
  373.     Back
  374.  
  375.     reverse the frame numbering for sequence files, this
  376.     allows you to reverse the effect of the anim operator
  377.     (frames are numbered N down to 1 instead of 1 up to N)
  378.  
  379.     Show
  380.  
  381.     show each frame in display window when rendered. Render
  382.     time is slower if this is set.
  383.  
  384.     Play
  385.  
  386.     play rendered animation
  387.  
  388.     Render
  389.       None
  390.       Color Map
  391.       Fast HAM8
  392.       HAM8
  393.  
  394.     if `Fast HAM8' is selected, RGB output is converted to FastHAM8.
  395.     if `Color Map' is selected, RGB output is converted to CMAP.
  396.     if `HAM8' is selected, RGB output is converted to HAM8 (63 colors).
  397.     else images are saved in their own type
  398.  
  399.     Format
  400.       Sequence
  401.       ANIM5
  402.       ANIM7W
  403.       ANIM7L
  404.       ANIM8W
  405.       ANIM8L
  406.       AVI
  407.       FLI/FLC
  408.       MPEG
  409.  
  410.     select animation format.
  411.  
  412.     Sequence    save each frame as separate image according
  413.             to the file base name (this will give names
  414.             "name.0001", ... "name.0025" for instance
  415.             with frames set to 25).
  416.  
  417.     ANIM5        saves as opcode 5 IFF ANIM
  418.  
  419.     FLI/FLC     saves as FLC (each chunk frame is saved as
  420.             FLI_COPY chunk, i.e. uncompressed)
  421.  
  422.     Other formats not implemented
  423.  
  424.     NOTE:   if image type is RGB and Render=None,
  425.         output format is forced to sequence
  426.  
  427.     Animation may be done on
  428.  
  429.         - Distort
  430.         - Effect
  431.         - Filter
  432.         - Convolve
  433.         - Resample
  434.  
  435.     while depressing the ALT key and hiting the OK button on these windows.
  436.  
  437.  
  438.  
  439. 3 - Balance window buttons
  440. --------------------------
  441.  
  442.     The Balance operation use transfer curves, one for each channel.
  443.     Each channel has 5 handling points (those in black color with
  444.     standart WB colors). To modify the curve when SPLine or Segment
  445.     mode is selected, click and hold left mouse button near a point,
  446.     move mouse then release.
  447.  
  448.     Channel1
  449.     Channel2
  450.     Channel3
  451.  
  452.     enable/disable balance per channel R/G/B or Y/U/V or ColorMap.
  453.     Grey images uses Channel1.
  454.  
  455.     Reset
  456.  
  457.     reset curves to default, SPLine mode
  458.  
  459.     Invert
  460.  
  461.     reverse points of the curve
  462.  
  463.     SPLine    (cycle button)
  464.     Segment
  465.     Gamma
  466.  
  467.     change mode of curve
  468.  
  469.     integer value
  470.  
  471.     gamma value (100 = 1.00) in Gamma mode
  472.  
  473.     Copy
  474.  
  475.     copy the last selected curve to the others enabled.
  476.     The mode (SPLine/Segment/Gamma) is also copied. This
  477.     lets you, for instance, perform SPLine on the Red,
  478.     Segment on the Green, and Gamma on the Blue in one op.
  479.  
  480.     All
  481.  
  482.     enable all channels
  483.  
  484.     Brightness
  485.     Contrast
  486.     Saturation
  487.  
  488.     not implemented
  489.  
  490.     RGB (cycle button)
  491.     YUV
  492.  
  493.     select color space, if YUV is selected balance is applied on
  494.     YUV components
  495.  
  496.     Balance (MX gadget) select this to edit curves
  497.     Equalize        compute/display curves to equalize histogram
  498.     Normalize        compute/display curves to normalize histogram
  499.     Histogram        display histogram
  500.  
  501.     You may choose first Equalize/Normalize or Histogram then Balance
  502.     and OK, the current transfer curves will be applied
  503.  
  504.     Load
  505.     Save
  506.  
  507.     not implemented
  508.  
  509.     Cancel
  510.  
  511.     abort balancing
  512.  
  513.     OK
  514.  
  515.     perform balancing applying the transfer curves
  516.  
  517.  
  518.  
  519. 4 - Color window buttons
  520. ------------------------
  521.  
  522.     NOTE: this window has changed since V1.3
  523.  
  524.     256 (MX buttons)
  525.     128
  526.     64
  527.     32
  528.     16
  529.     8
  530.     Custom
  531.  
  532.     select size of color map for color reduction, if Custom
  533.     is selected, you may enter a count in the gadget below
  534.  
  535.     integer
  536.  
  537.     set this by hand if none of the above helps you
  538.  
  539.     RGB (cycle button)
  540.     YUV
  541.  
  542.     select histogram color space
  543.  
  544.     Volume (MX buttons)
  545.     Count
  546.     Mixed
  547.  
  548.     select box division method for color reduction
  549.     Mixed set half Volume / half Count
  550.  
  551.     Quantize (MX buttons)       color reduction
  552.     Unmap            convert color mapped image to 24 bits RGB
  553.     Grey            convert 24 bits RGB image to Grey
  554.     HAM             convert 24 bits RGB image to HAM
  555.  
  556.     select conversion to apply
  557.  
  558.     None     (MX buttons)
  559.     Ordered(2)
  560.     Ordered(6)
  561.     Floyd-Steinberg
  562.     Burkes
  563.     Jarvis
  564.     Sierra
  565.     Stucky
  566.     Stevenson-Arce
  567.  
  568.     dithering method for color reduction. Currently only None
  569.     and Ordered(?) are implemented. No dithering is used for
  570.     HAM conversion.
  571.  
  572.     Black border
  573.  
  574.     set this if the first color must be black for color reduction
  575.  
  576.     System colors
  577.     Lock Palette
  578.  
  579.     unimplemented
  580.  
  581.     Cancel
  582.  
  583.     abort operation
  584.  
  585.     OK
  586.  
  587.     perform operation
  588.  
  589.     NEW on V1.4:
  590.     If palette is locked (see Palette window), color reduction will
  591.     use the locked palette instead of computing a new one.
  592.  
  593.  
  594.  
  595. 5 - Convert window buttons
  596. --------------------------
  597.  
  598.     Flip X axis (MX buttons)    flip image
  599.     Flip Y axis         flip image
  600.     Add Border            add border on Left/Top/Right/Bottom
  601.     Crop            crop from Left/Top size Width/Height
  602.     Visual Crop         crop from TopLeft/RightBottom mouse clicks
  603. #ifdef PRE_1.5
  604.     Exclude HSV         exclude pixels in H/S/V colorspace
  605.                 with tolerance set on Left/Top/Right
  606.                 others set to RGB 0:0:0
  607.     Include HSV         include pixels in H/S/V colorspace
  608.                 with tolerance set on Left/Top/Right
  609.                 others set to RGB 0:0:0
  610. #else
  611.     Exclude HSV
  612.     Include HSV         Must be renamed flood fill. This will
  613.                 set to black all pixels visited by
  614.                 a flood fill algorithm based on color
  615.                 tolerance, starting from a reference
  616.                 pixel.
  617. #endif
  618.     Pixel aspect        set pixel aspect for window display
  619.  
  620.     Left
  621.     Top
  622.     Right
  623.     Bottom
  624.     Width
  625.     Height
  626.  
  627.     parameters for the above operations
  628.  
  629.     Cancel
  630.  
  631.     abort operation
  632.  
  633.     OK
  634.  
  635.     perform operation
  636.  
  637.     NOTE:
  638.  
  639. #ifdef PRE_1.5
  640.     Exclude/Include need a RGB image and window display mode.
  641.     When selected and OK button is hit, you have to select in
  642.     the window display, the pixel for HSV color reference.
  643.     Operation is done in HSV color space. The tolerance
  644.     on Hue is given by Left, on Saturation by Top, and on
  645.     Value by Right slider.
  646. #else
  647.     Exclude/Include need a RGB image and window display mode.
  648.     When selected and OK button is hit, you have to select in
  649.     the window display, the pixel for RGB color reference.
  650.     Operation is done in RGB color space. The tolerance
  651.     on Red is given by Left, on Green by Top, and on Blue
  652.     by Right sliders.
  653. #endif
  654.  
  655.     Visual crop : use left mouse button to select top left corner,
  656.     then move mouse to select bottom right corner. To modify top
  657.     left corner depress SHIFT key while moving mouse. End the
  658.     selection releasing left mouse button.
  659.  
  660.  
  661.  
  662. 6 - Effect window buttons
  663. -------------------------
  664.  
  665.     Oil (MX buttons)    oil painting effect
  666.     Mosaic        mosaic effect, Width slider 1 ~ 32 pels
  667.     Posterize        reduce bits per gun, Width slider 1 (all) to 8 (none)
  668.     Cube        not implemented
  669.     Sphere        map image to a sphere
  670.  
  671.     Width
  672.  
  673.     parameter for Mosaic/Posterize operations
  674.  
  675.     Left
  676.  
  677.     parameter for Sphere operation.
  678.     The whole image height is use for Y mapping, while only
  679.     half the width is used for X mapping. This allows you to
  680.     select the Y axis rotation factor from 0 to 360°, however
  681.     the value is expressed in image width units.
  682.  
  683.     Top
  684.     Right
  685.     Bottom
  686.     Height
  687.  
  688.     unused parameters for the above operations
  689.  
  690.     Cancel
  691.  
  692.     abort operation
  693.  
  694.     OK
  695.  
  696.     perform operation
  697.     Hold ALT key while hiting OK to build a 360° Sphere animation
  698.  
  699.  
  700.  
  701. 7 - Filter window buttons
  702. -------------------------
  703.  
  704.     Minimum (MX buttons)        Minimum filter
  705.     Median            Median filter
  706.     Maximum            Maximum filter
  707.     Noise            not implemented
  708.     Despeckle            not implemented
  709.  
  710.     Left
  711.     Top
  712.     Right
  713.     Bottom
  714.     Width
  715.     Height
  716.  
  717.     unused parameters for the above operations
  718.  
  719.     Cancel
  720.  
  721.     abort operation
  722.  
  723.     OK
  724.  
  725.     perform operation
  726.     Hold ALT key while hiting OK to build an animation
  727.  
  728.  
  729.  
  730. 8 - Convolve window buttons
  731. ---------------------------
  732.  
  733.     Ch1
  734.     Ch2
  735.     Ch3
  736.  
  737.     enable/disable convolution per channel R/G/B
  738.     Grey images uses Ch1
  739.  
  740.     QuickEdge (MX buttons)
  741.     Kirsch
  742.     Prewitt
  743.     Sobel
  744.     Laplacian
  745.     Sharpen
  746.     Smooth
  747.     Emboss
  748.     Custom
  749.  
  750.     select predefined matrix
  751.  
  752.     3x3 (MX buttons)
  753.     5x5
  754.     7x7
  755.  
  756.     select matrix size
  757.  
  758.     Clipped (cycle button)      clip results into range 0~255
  759.     Absolute            if result < 0 use -result
  760.     Highest            use highest result
  761.     Treshold            result higher than
  762.     Circular            multi-pass matrix
  763.  
  764.     select computation method
  765.  
  766.     RGB (cycle button)
  767.     YUV
  768.  
  769.     select color space to apply the matrix
  770.     Try for instance Emboss in YUV with Ch2/Ch3 disabled !
  771.  
  772.     integer gadgets
  773.  
  774.     try changing values ! (e.g. treshold method/bias value)
  775.  
  776.     Load
  777.     Save
  778.  
  779.     not implemented
  780.  
  781.     Cancel
  782.  
  783.     abort convolution
  784.  
  785.     OK
  786.  
  787.     perform convolution
  788.     Hold ALT key while hiting OK to build an animation
  789.  
  790.     NOTE:
  791.  
  792.     setting the divisor to 0 will recompute the divisor which
  793.     will be set to the sum of the matrix
  794.  
  795.  
  796.  
  797. 9 - Palette window buttons
  798. --------------------------
  799.  
  800.     R/G/B sliders
  801.  
  802.     change R/G/B values of current color reg index
  803.  
  804.     index slider
  805.  
  806.     use this to scroll into a full 256 colors palette
  807.  
  808.     Start
  809.  
  810.     set Start to current color reg index
  811.  
  812.     End
  813.  
  814.     set End to current color reg index
  815.  
  816.     Pick
  817.  
  818.     select pixel color in display window
  819.  
  820.     Copy
  821.  
  822.     copy "Start" to "End" color
  823.  
  824.     Swap
  825.  
  826.     swap "Start" and "End" color
  827.  
  828.     Spread
  829.  
  830.     make gradient from "Start" to "End" color
  831.  
  832.     Undo
  833.  
  834.     restore initial palette
  835.  
  836.     Load
  837.  
  838.     NEW on V1.4:
  839.     Load a palette from an image file, any format supporting a
  840.     palette will fit (don't expect to find a palette in JPEG files !)
  841.  
  842.  
  843.     Free (cycle button)
  844.     Lock
  845.  
  846.     NEW on V1.4:
  847.     `Lock' will lock the current palette when reducing colors,
  848.     (see Color window).
  849.  
  850.     Make
  851.  
  852.     NEW on V1.4:
  853.     Build an equally distributed palette per gun. The first entries
  854.     are filled with colors ranging (0,0,0) thru (255,255,255), and
  855.     terminated with grey levels, if entries still available. For
  856.     instance making a 256 colors palette would yield with 6*6*6=216
  857.     entries followed by 40 grey levels. The amount of entries is
  858.     selected by the gadget described below.
  859.  
  860.     256 (cycle button)
  861.     240
  862.     216
  863.     125
  864.     64
  865.     27
  866.     16
  867.  
  868.     NEW on V1.4:
  869.     Select the amount of entries to build a palette.
  870.  
  871.     Grab
  872.     RGB
  873.     Save
  874.  
  875.     not implemented
  876.  
  877.     Abort
  878.  
  879.     leave restoring initial palette
  880.  
  881.     OK
  882.  
  883.     accept palette and apply on CMAP image
  884.  
  885.  
  886.  
  887. 10 - Resample window
  888. --------------------
  889.  
  890.     Nearest (MX buttons)
  891.     Bilinear
  892.     Cubic
  893.     Distance
  894.  
  895.     select method to resample
  896.     Cubic/Distance not implemented
  897.     Bilinear method may only size up
  898.  
  899.     Integer (MX buttons)
  900.     Float
  901.  
  902.     not implemented
  903.  
  904.     Width
  905.     Height
  906.  
  907.     select new Width & Height
  908.  
  909.     X2
  910.  
  911.     double image
  912.  
  913.     /2
  914.  
  915.     halve image
  916.  
  917.     1/1
  918.  
  919.     keep image aspect according to last Width or Height selection
  920.  
  921.     Cancel
  922.  
  923.     abort operation
  924.  
  925.     OK
  926.  
  927.     perform operation
  928.     Hold ALT key while hiting OK to build an animation
  929.  
  930.  
  931.  
  932. 11 - Distort window buttons
  933. ---------------------------
  934.  
  935.     Shear (MX buttons)  shear image from -45° to +45°
  936.     Rotate        rotate from -90° to +90°
  937.     Bend        bend using SPLines
  938.     Deform        not implemented
  939.     Custom        custom deformation using SPLines
  940.  
  941.     Angle
  942.  
  943.     set angle value for Bend or Rotate (trigonometric angle)
  944.  
  945.     Left
  946.     Top
  947.     Right
  948.     Bottom
  949.  
  950.     unused parameters
  951.  
  952.     X method
  953.     Y method
  954.  
  955.     Bend operation
  956.         set X or Y to other than none (not both!), then edit SPLine
  957.         as in Balance. Use Left mouse button for X mapping, and
  958.         Right mouse button for Y mapping.
  959.  
  960.     Custom
  961.         same as Bend, but ix(ox) method map from output to input
  962.         while ox(ix) map from input to output. Try it, you'll see
  963.         how it works ! (NOTE: both X & Y may be set).
  964.  
  965.     NEW IN V1.3: animation supported by interpolating between
  966.         the initial spline (Reset) and the one set by hand.
  967.  
  968.     Quality
  969.  
  970.     only Fast implemented
  971.  
  972.     Load
  973.     Save
  974.  
  975.     not implemented
  976.  
  977.     Cancel
  978.  
  979.     abort operation
  980.  
  981.     OK
  982.  
  983.     perform operation
  984.     Hold ALT key while hiting OK to build an animation
  985.  
  986.  
  987.  
  988. END of doc
  989. ----------
  990.  
  991.  
  992.  
  993.             ***********************
  994.             L A T E S T   I N F O S
  995.             ***********************
  996.  
  997. WW&WDNW
  998. =======
  999. (What Works & What Do Not Works => latest info)
  1000.  
  1001. This is a quick explanation of things that seems to [not] work
  1002.  
  1003.     There is no warning or error message when something goes wrong.
  1004.     (New: some messages do appear since V1.4)
  1005.  
  1006.     The recovery mechanisms implemented are quite simple:
  1007.  
  1008.     - Any fatal error usually will simply exit.
  1009.  
  1010.     - Any severe error will unload the current image, freeing
  1011.       most of the memory used by Grimm.
  1012.  
  1013.     - Most of others errors will simply abort the current operation.
  1014.  
  1015.     - Unsupported operations will act as a NOP.
  1016.  
  1017.     Some others things to know:
  1018.  
  1019.     - Any operator expecting an RGB image won't work if you
  1020.       loaded a ColorMap image (one example is Convolve Op).
  1021.       There is no warning messages (for now!) in those cases.
  1022.  
  1023.     - since V1.5 when using window display mode, there is no more
  1024.       limits on the amount of colors in a color mapped image in
  1025.       order to be able to display it. A rescaled grey map or ordered
  1026.       dithering map is used to show the picture.
  1027.  
  1028.     - Note also that custom screen display is currently unsupported
  1029.       on OCS/ECS.
  1030.  
  1031.     About Anim players:
  1032.  
  1033.       The IFF player handles opcodes 5/8W/8L files (soon 7W/7L)
  1034.       The FLIC player handles FLI and FLC files
  1035.       Both need AGA 8 planes display
  1036.  
  1037.       These are just simple anim players and are not designed for
  1038.       maximum speed playback (especially FLI/FLC player).
  1039.  
  1040.  
  1041.  
  1042. TODO's
  1043. ======
  1044.  
  1045.     The following may someday be corrected, improved or added .?.
  1046.  
  1047.     * Fatal bugs
  1048.       - none known yet !
  1049.  
  1050.     * Annoying bugs
  1051.       - seems convolving/filtering odd width images shift it left
  1052.  
  1053.     * System
  1054.       - AREXX interface
  1055.       - handle Load/Save within all Sub-Functions
  1056.       - preserve ALL Op parameters (Balance/Color/Palette/Convert/...)
  1057.       - ?? OS 2.1 support, is this really needed (tell me) ??
  1058.  
  1059.     * Speed
  1060.       - use LUT tables instead of mul to improve speed
  1061.         -- YUV <-> RGB
  1062.         -- convolve
  1063.         -- resample ??
  1064.       - use 2 1D method to resample faster (other then nearest)
  1065.  
  1066.     * Screen display
  1067.       - Grey mode is not implemented (displayed as HAM)
  1068.       - Add True Color display (4096 and 16M) (Yes, it's possible
  1069.         on a stand-alone AMIGA ! try `dsv -r' and select 16M)
  1070.       - add support to OCS/ECS and alien graphic cards
  1071.  
  1072.     * Window display
  1073.       - Reduce memory usage: convert and rescale on the fly while
  1074.         drawing in window.
  1075.  
  1076.     * Animation
  1077.       - For each op involved in animation, record a structure
  1078.         storing first and last frame parameters values. This
  1079.         may help to interpolate on some effects. Note that some
  1080.         are already implemented (see doc file).
  1081.       - reduce memory usage when Loop is active
  1082.  
  1083.     * Balance
  1084.       - brightness/contrast/saturation
  1085.       - add min/med/max threshold selection for histogram
  1086.  
  1087.     * Color/Palette
  1088.       - pre-AGA color map correction (0xA? -> 0xAA)
  1089.       - offset
  1090.       - sort by color/luma/occurence
  1091.       - remap after offset change, or sort
  1092.       - dithering
  1093.  
  1094.     * Convert
  1095.       - Mirror
  1096.       - interlace/deinterlace
  1097.  
  1098.     * Convolve
  1099.       - handle borders
  1100.       - more predefined filters (internal, or external via loader)
  1101.  
  1102.     * Distort
  1103.       - 2D shear (deform)
  1104.       - 2D perspective
  1105.       - quality handling smooth/high (only fast implemented)
  1106.  
  1107.     * Filter
  1108.       - handle borders
  1109.       - noise reduction
  1110.       - despeckle
  1111.  
  1112.     * Curves
  1113.       - ?? Bezier curves choice where SPLine/.. choice is used ??
  1114.       - add free drawing into X/Y mapping
  1115.       - add special maps into X/Y mapping
  1116.  
  1117.     * Image operation
  1118.       - HVS or HSB where YUV/RGB choice is used
  1119.       - multi level undo function
  1120.       - alpha channel
  1121.       - region selection/operation (think Magic Wand)
  1122.       - multi images support
  1123.       - composition (brush/image)
  1124.       - more animation
  1125.  
  1126.     * Paint
  1127.       - background color
  1128.       - gradient/tint functions
  1129.       - text composition border/shadow/outline/3D
  1130.       - brush
  1131.  
  1132.     * Output
  1133.       - ?? HAM6 converter and saver ??
  1134.       - PNG saver
  1135.       - add more anim formats
  1136.  
  1137.     * Input
  1138.       - window display: offset color map entries
  1139.       - add LZW & CMYK to TIFF reader
  1140.       - add interlaced support to GIF reader
  1141.       - add 4Base, 16Base to PCD-KODAK reader
  1142.       - add Photo selection from overview to PCD-KODAK reader
  1143.       - IRIS-SGI reader
  1144.       - PICT-MAC reader (?! heavy stuf)
  1145.       - PNG reader
  1146.